package com.zbkj.common.response.order;

import com.zbkj.common.response.product.ClientProductResponse;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @Auther:
 * @Date: 2024/10/1 11:50
 * @Description:
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "ReportOrderPayResonse对象", description = "报告申请订单支付页响应信息")
public class ReportOrderPayResonse implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("项目ID")
    private Long id;

    @ApiModelProperty("项目名称")
    private String projectName;

    @ApiModelProperty("项目类型：1 国标项目，2 军标项目")
    private Integer projectType;

    @ApiModelProperty("0 待估算 10 已撤回 20 估算中 30 估算完成 40 报告中 50 已完成")
    private Integer status;

    @ApiModelProperty("是否通知客户端：0 未通知 1、已通知")
    private Integer estimateFlag;

    @ApiModelProperty("报告申请状态：0未申请,1申请中,2已驳回,3已通过")
    private Integer reportApplyStatus;

    @ApiModelProperty("是否可完成确认标识： 0 不可确认  1 可触确认 （上传报告更新） 2 已通知客户端")
    private Integer reportFlag;

    @ApiModelProperty("项目文件字符总数")
    private Long totalCharum;

    @ApiModelProperty("购买报告包商品信息")
    private ClientProductResponse productResponse;

    @ApiModelProperty("购买数量")
    private Long productNum;

    @ApiModelProperty("应付金额")
    private BigDecimal totalAmount;

    @ApiModelProperty("报告申请-最小订单金额限制")
    private BigDecimal rpoMinAmount;


    @ApiModelProperty("报告申请-扣除流量值")
    private Long payFlowVal;

    @ApiModelProperty("报告申请-最小扣除流量值限制")
    private Long rpoMinFlowVal;
}
